import 'dotenv/config'
import http from 'http';
import fs from 'fs/promises';
import url from 'url';
import path from 'path';

//获取当前文件路径
const __filename = url.fileURLToPath(import.meta.url);
const __dirname = path.dirname(__filename);

console.log(__dirname,__filename);

const PORT = process.env.PORT;

const server = http.createServer
(async(req,res) =>{

    try{
        // 检查是否为GET请求
    if(req.method ==='GET'){
        let filePath;
    if(req.url === '/'){
        filePath = path.join(__dirname,'public','index.html');
    }else if(req.url === '/about'){
        filePath = path.join(__dirname,'public','about.html');
    }else{
        res.writeHead(404, {'Content-Type': 'text/html; charset=utf-8'});
        res.end('<h1>页面未找到</h1>');
        return;
    }

    const data = await fs.readFile(filePath);
    res.setHeader('Content-Type','text/html;charset = utf-8');
    res.writeHead(200);
    res.end(data);
}else{
    res.writeHead(400,{'Content-Type':'text/html;charset=utf-8'});
    res.end('<h1>非法请求</h1>');
}
}   catch (error){
    console.log(error);
    res.writeHead(500,{'Content-Type':'test/html; charset=utf-8'});
    res.end(`<h1>服务器错误</h1>`);
}

});

server.listen(PORT, () =>{
    console.log(`服务器已启动，监听端口${PORT}`);
});